博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C-C和指针作业题(第一章)
阅读量:6405 次
发布时间:2019-06-23

本文共 1624 字,大约阅读时间需要 5 分钟。

在Linux下输入EOF使用Ctrl+D, Windows下输入EOF使用Ctrl+Z

编写一个程序,从标准输入读取几行输入,每行输入都要打印到标准输出上,前面要加上行号,在编写这个程序时要试图让程序能够处理的输入行的长度没有限制。

#include 
int main(int argc, char **argv) { int ch, row_num = 1; unsigned char state = 1; while ((ch = getchar()) != EOF) { if (state == 1) { printf("%d", row_num); row_num++; state = 0; } putchar(ch); if (ch == '\n') { state = 1; } }return 0;}

编写一个程序,一行行的读取输入行,直至到达文件尾。算出每行输入行的长度,然后把最长的那行打印出来。为了简单起见,可以假定所有的输入行均不超过1000个字符

顺便练习一下多文件编译

文件func.h

#ifndef _FUNC_H#define _FUNC_H 1int int_max(int a, int b);int int_min(int a, int b);#endif

文件func.c

#include "func.h"int int_max(int a, int b) {    return a > b ? a : b;}int int_min(int a, int b) {                                                                                                                           return a > b ? b : a;}

文件main.c

#include 
#include
#include "func.h"#define MAX_LENGTH 1000int main(int argc, char **argv) { char max_str[MAX_LENGTH]; char scanf_str[MAX_LENGTH]; short max_len = 0; while (gets(scanf_str) != NULL) { if (strlen(scanf_str) > max_len && max_len < MAX_LENGTH) { max_len = int_min(strlen(scanf_str), MAX_LENGTH); strcpy(max_str, scanf_str); } } if (max_len > 0) { printf("%s\n", max_str); } return 0;}

编译:

  gcc -c -o func.o func.c

  gcc -c -o main.o main.c

连接:

  gcc -o main main.o func.o

运行:

  ./main

 

转载地址:http://rctea.baihongyu.com/

你可能感兴趣的文章
学习嵌入式LINUX系统的笔记和体会
查看>>
Android 关于长按back键退出应用程序的实现
查看>>
享元模式
查看>>
单元测试系列
查看>>
在Salesforce中对某一个Object添加 Validation Rule
查看>>
工作动机 [案例研究]
查看>>
调整一下自己的心情
查看>>
网卡IP配置切换,献给经常更改IP的哥们—以前原创(四)
查看>>
Visual tool for developers working with the Open XML Formats
查看>>
ASP.net应用程序中如何利用客户端的Javascript脚本
查看>>
解决oracle和plsql乱码问题
查看>>
struts2结合poi-3.7实现数据导出为excel
查看>>
hdu4708 Rotation Lock Puzzle
查看>>
PROPAGATION_REQUIRED
查看>>
Mac上搭建ELK
查看>>
443 Chapter7.Planning for High Availability in the Enterprise
查看>>
HttpHandler初探 - 页面上输出图像
查看>>
框架和语言的作用
查看>>
unidac连接ORACLE免装客户端驱动
查看>>
Cygwin + OpenSSH FOR Windows的安装配置
查看>>