77范文网 - 专业文章范例文档资料分享平台

C语言第7章 习题及实验参考答案~1

来源:网络收集 时间:2020-04-16 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

第7章 习题及参考答案

1. 编程,从键盘上输入n个整数,按逆序输出这些数。 参考程序: #include #define N 5 void main() {

int i,t,a[N]; for(i=0;i

printf(\printf(\for(i=0;i

for(i=0;i

2. 编程,已知某同学某门课程的平时、实习、测验和期末成绩,求该同学该门课程的总评成绩。其中,平时、实习、测验和期末分别占10%、20%、20%、50%。

参考程序: #include void main() { int i ; float tot,a[4]; for(i=0;i<4;i++) scanf(\

tot=0.1*a[0]+0.2*a[1]+0.2*a[2]+0.5*a[3]; printf(\}

3. 编程,输入n个整数,将最小值与第一个数交换,最大值与最后一个数交换,然后输出交换后的n个数。

参考程序: # include \#define N 10 void main()

{

int term[N]; int i,max,min; for(i=1;i

if (term[i]< term[min]) min=i;

if (term[i]> term[max])

max=i; }

if(term[min]!=term[0]) { {

t=term[min]; term[min]= term[0]; term[0]=t;} t=term[max]; term[max]= term[N-1]; term[N-1]=t;}

if(term[max]!=term[N-1]) for(i=1;i

4. 编程,已有一个已排好序的数组(由小到大),今输入另一个数,要求仍然有序。 参考程序: #include\void main()

{int i,s,x,a[11]={3,8,12,18,24,54,76,84,89,106}; printf(\scanf(\for(i=0;i<10;i++)

if(x

{for(s=9;s>=i;s--)

a[s+1]=a[s]; break;

} a[i]=x;

for(i=0;i<=10;i++)

printf(\}

5. 编程,有一个3?4的矩阵,找出其中最小的那个元素,以及它所在的行和列。 参考程序: #include void main()

{ int a[3][4]={{1,2,3,4}, {9,8,7,6}, {-10,10,-5,2}}; int i,j,row=0,colum=0,min; min=a[0][0]; for(i=0;i<=2;i++) for(j=0;j<=3;j++) if(a[i][j]

printf(\}

6. 编程,输出一个3行4列(记作3?4)矩阵A的转置矩阵AT(行列互换)。 参考程序: #include void main()

{ int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}}; int b[4][3],i,j; printf(\ for(i=0;i<3;i++) { for(j=0;j<4;j++)

}

printf(\ for(i=0;i<4;i++) { for(j=0;j<3;j++) printf(\ printf(\ } }

7. 编程,求3×3矩阵的主对角线上元素之和。 参考程序: #include void main() {

int a[3][3],i,j,sum=0; for(i=0;i<3;i++) for(j=0;j<3;j++) scanf(\

{ printf(\}

printf(\

b[j][i]=a[i][j];

for(i=0;i<3;i++) for(j=0;j<3;j++)

if(i==j) sum=sum+a[i][j]; printf(\}

8. 编程,求6×6矩阵下三角形元素之和。 参考程序: #include void main() {

int a[6][6],i,j,sum=0; for(i=0;i<6;i++) for(j=0;j<6;j++) scanf(\for(i=0;i<=5;i++) for(j=5;j>=5-i;j--) sum=sum+a[i][j]; printf(\}

9. 编程,输入一个字符串,然后以反序输出。 参考程序: #include #include main() { char c[20]; int i;

printf(\ gets(c);

printf(\for(i=strlen(c)-1;i>=0;i--) printf(\}

10. 编程,输出给定的字符串的长度。 参考程序: #include #include void main() {char s[80]; int i=0,num=0; gets(s); while(s[i]!='\\0')

{

num++; i++; } puts(s); printf(\

printf(\ }

11. 编程,输入一行字符,要求统计有多少个单词。 参考程序: #include \#include void main() { char string[81]; int i, num=0,word=0; char c; gets(string);

for(i=0;(c=string[i])!='\\0';i++)

if(c==' ') word=0; else if(word==0) { word=1; num++; }

printf(\ are %d words in the line\\n\}

12. 编程,密码输入程序。设计要求:以星号‘*’代替密码字符的显示,6≤密码长度≤12。 参考程序: #include \#include \#define MIN 6

/*密码最小长度*/

#define MAX 12 /*密码最大长度*/ void main() { int loop;

char password[13];

/*为密码字符串预留1个结束标志位*/

printf(\for( loop = 0; loop < MAX; loop++) { password[loop] = getch(); printf(\

/*以星号代替密码字符显示*/

if(password[loop]=='\\n') /*回车,结束密码输入*/

{ if( loop < MIN ) /*长度<6,提示重输*/

{ printf(\ress any key to continue…\

getch();

/*暂停,按任意键继续*/

printf(\

loop = -1; /*执行“loop++”后,使下标复位为0*/ }

else

/*密码长度在6~11之间*/

{ password[loop] = '\\0'; /*置密码串结束标志*/ break; }

if( loop == MAX -1) /*密码长度达到最大值MAX*/ password[loop] = '\\0'; /*置密码串结束标志*/ }

/*for循环尾*/

} /*main()函数尾*/

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库C语言第7章 习题及实验参考答案~1在线全文阅读。

C语言第7章 习题及实验参考答案~1.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/976615.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: