導航:首頁 > 編程語言 > c語言指針編程題經典

c語言指針編程題經典

發布時間:2022-08-03 10:49:59

⑴ C語言 數組和指針編程

// ConsoleApplication3.cpp : 定義控制台應用程序的入口點。

#include "stdafx.h"
void upCopy(char* new1, char* old)
{
while (*old)
{
if (65<=*old && *old<= 90) *new1++=*old;
old++;
}
*new1=0;
}

int main()
{
char s1[140]; //="";
char s0[]="foiwABEifjCDB";
upCopy(s1, s0);
printf("(%s%s",s1,")");
getchar();
return 0;
}

⑵ C語言中關於指針部分的兩道編程題

1題目:
#include<stdio.h>
voidsearch(int(*p)[4],intn),everage(int(*p)[4],intn);
intmain()
{inta[3][4],i,j;
for(i=0;i<3;i++)
for(j=0;j<4;j++)
scanf("%d",&a[i][j]);
int(*p)[4],n;
scanf("%d",&n);
p=a;
search(p,n);
everage(p,n);
return0;
}
voidsearch(int(*p)[4],intn)
{inti=0;
for(i=0;i<4;i++)
if(i!=3)printf("%d",*(*(p+n-1)+i));
elseprintf("%d ",*(*(p+n-1)+i));
}
voideverage(int(*p)[4],intn)
{inti,sum=0;
floatev;
for(i=0;i<4;i++)
sum+=*(*(p+n-1)+i);
ev=1.0*sum/4;
printf("%.2f",ev);
}
2題目:
#include<stdio.h>
voidorder(int(*p)[4]);
intmain()
{inta[3][4],i,j;
int(*p)[4];
for(i=0;i<3;i++)
for(j=0;j<4;j++)
scanf("%d",&a[i][j]);
p=a;
order(p);
return0;
}
voidorder(int(*p)[4])
{inttemp,k,j,i,b[]={0,0,0};
for(j=0;j<3;j++)
for(i=0;i<4;i++)
b[j]+=*(*(p+j)+i);
for(j=0;j<2;j++)
for(i=j+1;i<3;i++)
{if(b[j]<b[i]){for(k=0;k<4;k++)
{temp=*(*(p+i)+k);
*(*(p+i)+k)=*(*(p+j)+k);
*(*(p+j)+k)=temp;}}
}
for(j=0;j<3;j++)
for(i=0;i<4;i++)
if(i!=3)printf("%d,",*(*(p+j)+i));
elseprintf("%d ",*(*(p+j)+i));
}

⑶ c語言指針的編程題

#include<stdio.h>
void
main()
{
char
str1[10],str2[10],*p;
int
i;
p=str1;
for(i=0;i<9;i++)
scanf("%c",&str1[i]);
str1[i]=
'\0';////該在str1[i]最後加一個'\0'要下面的結束for(i=0;*p;i++,p++)
就找不到結束符,所以後面就有亂碼「燙燙」
for(i=0;*p;i++,p++)///你可以用i<10來直接截取字元的前十位是可以的但是只是截取,其實真是的str2仍然後面有亂碼
str2[i]=*p;
str2[i]='\0';
printf("%s\n",str2);
}

⑷ C語言編程題目 指針

C程序如下:
#include
"stdio.h"
#include<string>
#include<iostream>
using
namespace
std;
main()
{
string
Cons="12345678";
string
input;
const
char
*B=Cons.data();
const
char
*A;
cin>>input;
A=input.data();
int
lengthA=input.length();
int
lengthB=Cons.length();
for(int
i=0;i<lengthB;i++)
{
if(B[i]>A[i])
{
printf("輸入的數小於原數");break;}
if(B[i]<A[i])
{
printf("輸入的數大於原數");break;}
}
if(lengthA>lengthB&&lengthB==i)
printf("輸入的數大於原數");
if(lengthA==lengthB&&lengthB==i)
printf("輸入的數等於原數");
}
如果你說的是比較字元串大小就是這個程序了
進入後開始輸入你要輸入的字元串

⑸ C語言指針型函數編程題,求大蝦~~

#include"stdio.h"

char*strins(char*s1,char*s2){

inta=0,b=0;

while(s1[a++]);

while(s2[++b]);

while(a--){

s1[a+b]=s1[a];

}

while(b--){

s1[b]=s2[b];

}

returns1;

}

intmain(){

chars1[20];

chars2[20];

gets(s1);

gets(s2);

printf("c:%s",strins(s1,s2));

}

⑹ C語言指針簡單的編程題

intmain()
{
doublea[20];
doubleresult=0.0;
inti=0;
doublefact=3.2;
doubleval=1.5;

double*ptrDouble=&a[0];
//輸出所有數組值
for(i=0;i<20;i++)
{
*(ptrDouble+i)=i*fact+val;
printf("%f",*(ptrDouble+i));
}
ptrDouble=&a[10];

//輸出後是個值
for(i=0;i<10;i++)
{
result=result+*(ptrDouble+i);
}
printf("%f",result);

};

⑺ C語言指針一道簡單的編程題

按照你的要求編寫的C語言程序如下

include<stdio.h>
intmain()
{
inta,b;
int*p=&a;
a=30;
printf("a=%d ",*p);
p=&b;
scanf("%d",p);
a=*p+24;
printf("a=%d,b=%d",a,b);
return0;
}

運行結果
a=30
76
a=100,b=76

⑻ c語言 指針部分編程題

#include<stdio.h>

#include<stdlib.h>


intswap(int*a,int*b)

{

inttemp;

temp=*a;*a=*b;*b=temp;

return0;

}


intmain()

{

int*p1=malloc(sizeof(int));

int*p2=malloc(sizeof(int));

int*p3=malloc(sizeof(int));


scanf("%d%d%d",p1,p2,p3);

if(*p1<*p2){

swap(p1,p2);

if(*p1<*p3){

swap(p1,p3);

if(*p2<*p3)

swap(p2,p3);

}else{

if(*p2<*p3)

swap(p2,p3);

}

}else{

if(*p1<*p3){

swap(p1,p3);

if(*p2<*p3)

swap(p2,p3);

}else{

if(*p2<*p3)

swap(p2,p3);

}

}

printf("%d%d%d",*p1,*p2,*p3);


return0;

}

運行結果

⑼ c語言指針編程題

int main()
{
double a[20];
double result = 0.0;
int i = 0;
double fact = 3.2;
double val = 1.5;

double *ptrDouble = &a[0];
//輸出所有數組值
for (i = 0; i<20;i++)
{
*(ptrDouble + i) = i*fact+val;
printf("%f ",*(ptrDouble + i));
}
ptrDouble = &a[10];

//輸出後是個值
for (i = 0; i<10;i++)
{
result = result + *(ptrDouble+i);
}
printf("%f",result);

};

⑽ 請教指針和數組的c語言經典例題

利用指代替下標進行數組編程:從健盤輸入8個整數放入數組,然後將每個奇數加1,每個偶數減1,最後輸出數組的所有元素.
程序如下:
main()
{
int a[8],*p; /*定義變數和數組*/
for(p=a;p<a+8;p++)
scanf("%d",p);/*輸入*/
for(p=a;p<a+8;p++)
{ if(*p%2==0) (*p)--;
else (*p)++;
}
for(p=a;p<a+8;p++)
printf("%d\t",*p); /*一個個輸出*/
}

其實指針和數組是一個東東,數組名就是一個指針,如果個這例子看不懂,再問!!!

閱讀全文

與c語言指針編程題經典相關的資料

熱點內容
java迭代器遍歷 瀏覽:299
閩政通無法請求伺服器是什麼 瀏覽:48
怎麼做積木解壓神器 瀏覽:203
王者榮耀解壓玩具抽獎 瀏覽:49
12位是由啥加密的 瀏覽:868
程序員編迷你世界代碼 瀏覽:895
php取現在時間 瀏覽:246
單片機高吸收 瀏覽:427
怎麼區分五代頭是不是加密噴頭 瀏覽:244
hunt測試伺服器是什麼意思 瀏覽:510
2013程序員考試 瀏覽:641
畢業論文是pdf 瀏覽:736
伺服器跑網心雲劃算嗎 瀏覽:471
單片機定時器計數初值的計算公式 瀏覽:801
win7控制台命令 瀏覽:567
貓咪成年app怎麼升級 瀏覽:692
360有沒有加密軟體 瀏覽:315
清除cisco交換機配置命令 瀏覽:751
華為刪除交換機配置命令 瀏覽:473
shell打包命令 瀏覽:827