C语言程序设计填空改错总结.docx
《C语言程序设计填空改错总结.docx》由会员分享,可在线阅读,更多相关《C语言程序设计填空改错总结.docx(21页珍藏版)》请在冰豆网上搜索。
C语言程序设计填空改错总结
1:
求最大公约数、最小公倍数
#include
#include
intmain(void)
{
inta,b,num1,num2,t;
system("CLS");
printf("\nInputtwonumbers:
\n");
scanf("%d%d",&num1,&num2);
if(num1{
a=num2;
b=num1;
}
else
{
a=num1;
b=num2;
}
while(b!
=0)
{
t=a%b;
a=b;
b=t;
}
printf("greatestcommondivisor:
%d\n",a);%最大公约数printf("leastcommonmultiple:
%d\n",num1*num2/a);%最小公倍数
return0;
}
2:
输出字符串长度最大的
#include
#include
#include
char*proc(char(*a)[81],intM)
{
char*max;
inti;
max=a[0];
for(i=1;iif(strlen(max)max=a[i];
returnmax;
}
intmain(void)
{
charss[10][81],*max;
intn,i=0;
printf("输入若干个字符串:
");
gets(ss[i]);
puts(ss[i]);
while(!
strcmp(ss[i],"****")==0)
{
i++;
gets(ss[i]);
puts(ss[i]);
}
n=i;
max=proc(ss,n);
printf("\nmax=%s\n",max);
return0;
}
3:
一/二维数组的定义和初始化
一维数组的定义和初始化
inta[5]={1,2,3,4,5};
二维数组的定义和初始化
inta[3][3]={{1,2,3},{4,5,6},{7,8,9});
inta[3][3]={1,2,3,4,5,6,7,8,9};
inta[3[3]={3*3};
4:
ifelse语句的使用
#include
intmain(void)
{
inta=3,b=2,c=1;
if(a
if(b<0)
c=0;
else
c++;
printf("%d\n",c);
return0;
}
5:
字符常量与C语言中的转义字符
'\v''0xff''\017''A'
0x后面的数是十六进制数
\0后面的数是八进制数
\v是垂直制表
\t是水平制表
6:
跳格输出
#include
intmain(void)
{
charch[2][5]={"1234","5678"},*p[2];
inti,j,s=0;
for(i=0;i<2;i++)
p[i]=ch[i];
for(i=0;i<2;i++)
for(j=0;j<4;j++)
{
s=p[i][j]-'0';
printf("%d",s);
j++;
}
return0;
}
7:
关系表达式/逻辑表达式的结果为0或1,0代表假,1代表真。
#include
intmain(void)
{
inta=5,b=6,c=7,d=8,m=2,n=2;
((m=a>b)&&(n=c>d));
printf("%d\n",n);
return0;
}
8:
形参值的变化不影响实参
#include
typedefstruct{intb,p;}A;
voidf(Ac)
{
intj;
c.b+=1;
c.p+=2;
}
intmain(void)
{
inti;
Aa={1,2};
f(Aa);
printf("%d,%d\n",a.b,a.p);
return0;
}
8:
输出最大字符串
#include
#include
intmain(void)
{
chara[50],b[30];
inti;
scanf("%s",a);
strcpy(b,a);
for(i=1;i<5;i++)
{
scanf("%s",a);
if(strcmp(b,a)<0)
strcpy(b,a);
}
printf("thelongeststringis%s\n",b);
printf("thelengthis%d\n",strlen(b));
return0;
}
9:
冒泡排序
inti,j;
inta[M];
for(i=1;ifor(j=0;jif(a[j]{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
9:
选择排序
inti,j;
inta[M];
intt;
intindex;
for(i=0;iindex=i;
for(j=i+1;jif(a[i]>a[j])
index=j;
t=a[i];
a[i]=a[index];
a[index]=t;
经典程序
第2套:
程序改错题
#include
#include
#include
/*************found**************/
voidproc(longs,long*t)
{longs1=10;
s/=10;
*t=s%10;
/*************found**************/
while(s>0)
{s=s/100;
*t=s%10*s1+*t;
s1=s1*10;
}
}
voidmain()
{
longs,t;
system("CLS");
printf("\nPleaseenters:
");
scanf("%ld",&s);
proc(s,&t);
printf("Theresultis:
%ld\n",t);
}
程序设计题
#include
#include
#include
#include
voidproc(char*str,chart[])
{
inti,j=0;
for(i=0;str[i]!
='\0';i++)
{
if(i%2==0&&str[i]%2!
=0)
t[j++]=str[i];
}
t[j]='\0';
}
intmain(void)
{
charstr[100],t[100];
system("CLS");
printf("\nPleaseenterstringstr:
");
scanf("%s",str);
proc(str,t);
printf("\nTheresultis:
%s\n",t);
return0;
}
第3套
程序填空题
#include
#include
#defineM10
voidmain()
{
inti,n=0;
intarr[M]={40,68,62,33,35,52,48,95,
66,73};
intbb[M];
system("CLS");
for(i=0;iif(arr[i]bb[n++]=arr[i];
printf("\n***displaybb***\n");
for(i=0;iprintf("bb[%d]=%2d",i,bb[i]);
}
程序改错题
#include
#include
#include
intm[10];
/*************found**************/
voidproc(void)
{
intj;
printf("\nInsubfuncaftercalling\n");
for(j=0;j<10;j++)
{
/*************found**************/
printf("%d",m[j]/5);
}
}
voidmain()
{
inti;
printf("Inmainbeforecalling\n");
for(i=0;i<10;i++)
{
m[i]=i+20;
printf("%d",m[i]);
}
proc();
printf("\nInmainaftercalling\n");
for(i=0;i<10;i++)
printf("%d",m[i]/5);
}
程序设计题
#include
#defineM16
typedefstruct
{charnum[10];
ints;
}STREC;
voidproc(STRECa[])
{
STRECt;
inti,j;
for(i=1;ifor(j=0;jif(a[j].s{
t=a[j];
a[j]=a[j+1];
a[j+1]t;
}
}
voidmain()
{
STRECstu[M]={{"GA005",85},{"GA003",76},
{"GA002",69},{"GA004",85},{"GA001",91},
{"GA007",72},{"GA008",64},{"GA006",87},
{"GA015",85},{"GA013",91},{"GA012",64},
{"GA014",91},{"GA011",66},{"GA017",64},
{"GA018",64},{"GA016",72}};
inti;
proc(stu);
printf("Thedataaftersorted:
\n");
for(i=0;i{if(i%4==0)
//每行输出4个学生记录
printf("\n");
printf("%s%4d",stu[i].num,stu[i].s);
}
printf("\n");
}
第4套
程序填空题
#include
#include
doubleproc(doublex[10])
{
inti;
doubleavg=0.0;
doublesum=0.0;
double