c语言习题及答案_爱课程mooc(8)

2019-03-28 13:10

调用Inverse()函数将字符串逆序存放,然后在主函数中输出逆序后的字符串。 (2)在子函数Inverse()中实现字符串的逆序存放。函数原型为: void Inverse(char str[]); 程序运行结果示例1: Input a string: abcde↙ Inversed results: edcba

程序运行结果示例2: Input a string: hello↙

Inversed results: olleh

输入格式: 用gets()输入字符串 输出格式:

输入提示信息:\ 输出提示信息:\\\n\用puts()输出字符串

注意:为避免出现格式错误,请直接拷贝粘贴上面给出的输入、输出提示信息和格式控制字符串! 输入样例: 输出样例:

#include #include #define maxn 80

void Inverse(char str[]); int main(){

char str[maxn];

printf(\ gets(str);

printf(\ Inverse(str); puts(str); return 0; }

void Inverse(char str[]) {

char ch;

int len = strlen(str),i; for(i = 0; i < len / 2; i++) {

ch = str[i];

str[i] = str[len - i - 1]; str[len - i - 1] = ch; } }

第十章

10.1

水手分椰子(4分)

题目内容:

五个水手在岛上发现一堆椰子,先由第1个水手把椰子分为等量的5堆,还剩下1个给了猴子,自己藏起1堆。然后,第2个水手把剩下的4堆混合后重新分为等量的5堆,还剩下1个给了猴子,自己藏起1堆。以后第3、4个水手依次按此方法处理。最后,第5个水手把剩下的椰子分为等量的5堆后,同样剩下1个给了猴子。请用迭代法编程计算并输出原来这堆椰子至少有多少个。

输入格式: 无 输出格式:\输入样例: 输出样例:

注意:为避免出现格式错误,请直接拷贝粘贴上面给出的输入、输出提示信息和格式控制字符串!

#include check(int n){ int i;

for(i=0; i<5; i++) {

if(n%5!=1) return 0; n=n/5*4; }

return 1; }

int main() {

int i;

for(i=6; i<10000; i++) {

if(check(i)) {

printf(\ break; } }

return 0; }

10.2

找最值(4分)

题目内容:

从键盘任意输入10个整数,用指针变量作函数参数编程计算最大值和最小值,并返回它们所在数组中的位置。函数原型如下所示: int FindMax(int num[], int n, int *pMaxPos);//函数返回最大值,pMaxPos返回最大值所在的下标 int FindMin(int num[], int n, int *pMinPos);//函数返回最小值,pMaxPos返回最小值所在的下标 程序运行结果示例: Input 10 numbers: -1 2 3 45 92 8 9 12 7 8↙

Max=92,Position=4,Min=-1,Position=0

输入格式: \ 输出格式:

提示信息:\

输出结果:\ 输入样例: 输出样例:

注意:为避免出现格式错误,请直接拷贝粘贴上面给出的输入、输出提示信息和格式控制字符串! 时间限制:500ms内存限制:32000kb

#include

int FindMax(int num[], int n, int *pMaxPos); int FindMin(int num[], int n, int *pMinPos); int num[10];

int i,maxdex=0,mindex=0;

int main(){

int max,min; int m,n;

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

scanf(\ max=FindMax(num,10,&m); min =FindMin(num,10,&n);

printf(\ return 0; }

int FindMax(int num[], int n, int *pMaxPos) {

*pMaxPos=num[0]; for (i=1;i

if (num[i]>*pMaxPos) {*pMaxPos=num[i]; maxdex=i; }

return maxdex; }

int FindMin(int num[], int n, int *pMinPos) {

*pMinPos=num[0]; for (i=1;i

if (num[i]<*pMinPos) {*pMinPos=num[i]; mindex=i; } return mindex; }

10.3

星期查找(4分)

题目内容:

任意输入英文的星期几,通过查找如图所示的星期表,输出其对应的数字,若查到表尾,仍未找到,则输出错误提示信息。

提示:用一个二维字符数组weekDay来存放如图所示的星期表的内容(字符串)。输入待查找的字符串,然后在星期表中顺序查找与输入字符串相匹配的字符串。找到的字符串在星期表数组中的第一维下标(行号)即为题目所求。 程序运行结果示例1: Please enter a string: Friday↙ Friday is 5

程序运行结果示例2: Please enter a string: Fruday↙ Not found!

输入格式: 字符串输入采用gets()函数 输出格式:

输入提示信息:\:\\n\ 找到了,输出:\ 没找到,输出:\ 输入样例: 输出样例:

注意:为避免出现格式错误,请直接拷贝粘贴上面给出的输入、输出提示信息和格式控制字符串!

#include #include #define max 50

int main() {

char week[7][10] ={\ int i,flag=0; char find[max];

printf(\ gets(find);

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

if (strcmp(week[i],find)==0) {

flag=1; break; } if(flag==0)

printf(\ else

printf(\ return 0; }

10.4

杨辉三角形(4分)

题目内容:

编程打印具有如下形式的杨辉三角形,其中输出数据的行数n从键盘输入,并且n<=10。 程序运行结果示例1: Input n (n<=10): 5↙ 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1

程序运行结果示例2: Input n (n<=10): 7↙ 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1


c语言习题及答案_爱课程mooc(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:玻璃幕墙专项施工方案 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: