首页 > 代码库 > 《C程序设计语言》练习
《C程序设计语言》练习
练习1-9:编写一个将输入复制到输出的程序,并将其中连续的多个空格用一个空格代替。
思路是用一个游标state标记,如果遇到一个空格就将他变成0,直到变成非空格,将state变成1,先判断条件,如果state是0则不输出。
代码:
while(c=getchar() != EOF){ if(c == ‘ ‘ && state == 0) ; else if(c == ‘ ‘){ putchar(c); state=0; } else{ putchar(c); state=1; } }
1.14:编写一个程序,打印输入中各个字符出现频度的直方图。
水平方向:
#include<stdio.h> main(){ char c; int i,a[128]; for(i=0;i<128;i++) a[i] = 0; while(scanf("%c",&c) != EOF){ a[c]++; } for(i=0;i<128;i++){ printf("%-4d",i); while(a[i] != 0){ printf("-"); a[i]--; } printf("\n"); } }
练习1-16:修改打印最长文本行的程序的主程序main,使之可以打印任意长度的输入行的长度,并尽可能多地打印文本。
《C程序设计语言》练习
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。