2022年自学考试《C语言程序设计》练习题及答案3
【3.11】下面程序的功能是用辗转相除法求两个正整数m和n的最大公约数。
hcf(int m,int n)
{int r;
if(m
{r=m;
①;
n=r;
}
r=m%n;
while(②)
{m=n;
n=r;
r=m%n;
}
③;
}
【3.12】下面程序的功能是使用冒泡法对输入的10个浮点数从小到大进行排序。排好序的10个数分两行输出。程序如下:
#include
main()
{①;
int i,j;
printf('Input 10 numbers pleasen');
for(i=0;②;i++)
scanf('%f',&a<i>);
printf('n');
for(i=2;③;i++)
for(j=0;④;j++)
if(⑤)
{x=a[j];
⑥;
a[j+1]=x;
}
printf('The sorted 10 numbers;n');
for(i=0;⑦;i++)
{if(⑧)
printf('n');
printf('%ft',a<i>);
}
printf('n');
}
【3.13】下面程序的功能是读入20个整数,统计非负数个数,并计算非负数之和。
#include'stdio.h'
main()
{int i,a[20],s,count;
s=count=0;
for(i=0;i<20;i++)
scanf('%d',①);
for(i=0;i<20;i++)
{if(a<i><0)
②;
s+=a<i>;
count++;
}
printf('s=%dt count=%dn',s,count);
}
【3.14】下面程序的功能是删除字符串s中的空格。
#include
main()
{char*s='Beijing ligong daxue';
int i,j;
for(i=j=0;s<i>!='';i++)
if(s<i>!='')①;
else②;
s[j]='';
printf('%s',s);
}
【3.15】下面程序的功能是将字符串s中所有的字符'c'删除。请选择填空。
#include
main()
{char s[80];
int i,j;
gets(s);
for(i=j=0;s<i>!='';i++)
if(s<i>!='c')①;
s[j]='';
puts(s);
}
【程序填空题参考答案】
【3.11】答案:①m=n②r!=0③return(n)
【3.12】答案:①float a[10],x②i<=9③i<=8④j<=9-i
⑤a[j]>a[j+1]⑥a[j]=a[j+1]⑦i<=9⑧i%5==0
【3.13】答案:①&a<i>②continue
注释:①是基本概念,使用scanf函数输入数组元素的值。当输入的元素值小于0时,应当跳过后面的语句,取下一个数,所以②要填入continue。
【3.14】答案:①s[j++]=s<i>②s[j]=s<i>
【3.15】答案:①s[j++]=s<i>
热门推荐:
自考有疑问、不知道如何选择主考院校及专业、不清楚自考当地政策,点击立即了解》》
推荐阅读: