解题思路:
前N行字符串的处理:
我们已知行数,就可以直接定义一个字符串数组来保存输入字符串,因为scanf函数遇到空格就会结束输入,而gets函数会把空格读进来,遇到回车符才会结束,所以采用gets函数来完成输入,输出时可用puts函数(自动输出一个回车符),但题目要求留有一空行,所以勿忘再输出一回车符。
N行之后的字符串的处理:
同样也定义一个足够大的字符串数组,并在读入的同时统计字符串的个数(不含空格),然后将其输出即可。
参考代码:
#include<stdio.h> #include<string.h> int main(){ int n,i; char s[225][225]; scanf("%d",&n);//防止输入n之后的回车符会被gets函数读入 char c=getchar();//丢掉回车符 char str[n][225]; //前N行的输入 for(i=0;i<n;i++){ gets(str[i]); } //N行之后的输入 int len=0; while(~scanf("%s",s[len++]));//相当于while(scanf("%s",s[len++])!=EOF); //前N行的输出 for(i=0;i<n;i++){ puts(str[i]);//注意:puts在输出字符串后会自动输出一个回车符。 putchar('\n'); } //N行之后的输出 for(i=0;i<len;i++){ puts(s[i]); putchar('\n'); } return 0; }
能力有限,如有建议,多多提出。
0.0分
5 人评分
C语言训练-计算t=1+1/2+1/3+...+1/n (C语言代码)浏览:910 |
C语言程序设计教程(第三版)课后习题1.5 (C++代码)浏览:778 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:639 |
C语言训练-求PI* (C语言代码)浏览:641 |
Hello, world! (C语言代码)浏览:768 |
杨辉三角 (C语言代码)浏览:505 |
用筛法求之N内的素数。 (C语言代码)浏览:595 |
分糖果 (C语言代码)浏览:980 |
简单的a+b (C语言代码)浏览:491 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:487 |