C和指针第一章编程练习

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

int main()
{
    int ch=0;
    int i = 1;//行号
    int flag = 1;
    while ((ch = getchar()) != EOF)//EOF是标准输入的结尾
    { 
       if (flag == 1)//注意比较是==
       {
         printf("<%d>", i);
         i++;
         flag++;
       }
       if (ch == ‘\n‘)
         flag = 1;
       putchar(ch);
    }
    system("pause");
    return 0;
}

3.编写一个程序,从标准输入读取一些字符,并把它们写到标准输出上,它同时应该计算checksum
的值,并写在字符的后面。

int main()
{
    char  ch =  0 ;
    signed char checksum = -1;
    printf("请输入:\n");
    while ((ch = getchar()) != EOF)//EOF是标准输入的结尾
    {
        putchar(ch);
        checksum+= ch;
        if (ch == ‘\n‘)
        {
          printf("%d\n", checksum);
        }
    }
    system("pause");
    return 0;
}

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

int main()//ctrl+z可以停止输入,注意熟练使用gets()、puts()、getchar()、
{
    int i = 0;
    char max_str[MAX] = { 0 };
    char str[MAX] = { 0 };
    int len = 0;
    int maxlen = -1;
    while (gets(str)!=NULL)
    {
       len = strlen(str);
       if (len > maxlen)
       {
          maxlen = len;
          strcpy(max_str, str);
       }
    }
    if (maxlen >= 0)
       printf("%s", max_str);
    system("pause");
    return 0;
}
时间: 2024-11-10 15:28:41

C和指针第一章编程练习的相关文章

《大道至简》第一章——编程的精义_读后感(Java伪代码形式)

<大道至简>第一章——编程的精义_读后感(Java伪代码形式)1.愚公移山//愚公为团体的项目组织者.团体经理.编程人员.技术分析师等//子孙荷担者三人为三名技术人员//遗男为外协//目标为“毕力平险,指通豫南,达于汉阴”public class Ygys; //定义一个名为Ygys的类{String 人员;public static void main(String[] args)//定义主程序{人员初始化人员= new String();while(山没平){if(人员死){人员 = 愚公

javascript数据结构和算法 第一章(编程体验)一

声明和初始化变量 Javascript变量默认是全局作用域的.严格来说,使用之前是不需要定义的. 当一个javascript变量在没有被声明之前直接进行初始化,它就是一个全局变量.在这本书中,我们沿用编译语言如c++和java的编程约定.在使用变量之前都进行声明. 这还有一个附带的好处,声明的变量可以作为本地变量. 我们将会在本章节的后面讨论更多关于变量的作用域. 声明javascript变量,使用关键字var 变量名称.可选择的,可以带上赋值表达式. 下面是一些例子 var number; v

javascript数据结构和算法 第一章(编程体验)三

变量作用域 变量作用域就是指在一个程序中,变量的值在哪里可以被获取到.javascript函数作用域被定义为函数作用域,这意味着变量的值在定义和声明该变量的函数,包括任何在该函数的嵌套函数里是可见的. 当一个变量定义在函数的外面,在主程序中,该变量将会拥有全局作用域.这就意味着它的值可以被程序的任何地方,包括函数获取. 下面的小程序演示全局变量时如何工作的. function showScope() { return scope; } var scope = "global"; pri

《大道至简》 第一章 编程的精义 读后感

早早就读完了<大道至简>第一章编程的精义,现在写一下我的读后感. 首先,开篇由<愚公移山>引入,叙述了原始需求的产生,项目沟通的基本方式,以及确定了项目目标,为了达到这个目标择定了一个井然有序.可以实现的技术方案.在项目实施过程中所出现的人物按任务不同划分为了技术人员.工程管理人员和一名外协.愚公的论述里面包含了编程的根本:顺序.分支和循环.也就是说,编程可以通过这三个部分来实现,这就是编程的精义. 本章第二节还提到了“会或者不会写程序的问题”,书中“除了先天智障或者后天懒惰者都是

《大道至简》第一章编程的精义伪代码读后感

最近,读了老师推荐的一本关于编程思想的书<大道至简>.书中第一章主要讲编程的精义,以愚公移山的故事来形象的讲解编程的的过程.通过一个简单的寓言故事,看到原始需求的产生,项目的沟通,项目目标,制定解决方案,外力协助,这些也都是编程项目的过程.从中我们看到了编程的根本:顺序,分支和循环. import.java.大道至简.*; import.java.愚公移山.*; public class Yugongyishan { 愚公={项目组织者,团队经理,编程人员,技术分析师}; //沟通方式:聚室而

《大道至简》第一章-编程的精义 感悟

2015-09-20  09:20:02 太行.王屋二山,方七百里,高万仞.本在冀州之南,河阳之北. 北山愚公者,年且九十,面山而居.惩山北之塞,出入之迂也.聚室而谋曰:“吾与汝毕力平险,指通豫南,达于汉阴,可乎?”杂然相许.其妻献疑曰:“以君之力,曾不能损魁父之丘,如太行.王屋何?且焉置土石?”杂曰:“投诸渤海之尾,隐土之北.”遂率子孙荷担者三夫,叩石垦壤,箕畚运于渤海之尾.邻人京城氏之孀妻有遗男,始龀,跳往助之.寒暑易节,始一反焉. 河曲智叟笑而止之曰:“甚矣,汝之不惠.以残年余力,曾不能毁

《大道至简》第一章 编程的精义 java伪代码形式

愚公.这位名家身上,浓缩了项目组织者.团队经理.编程人员.技术分析师等众多角色的优秀素质. 愚公移山事件分析: 原始需求:惩山北之塞,出入之迂 项目沟通方式:聚室而某曰 项目目标:毕力平险,指通豫南,达于汉阴 技术方案:扣石垦壤,箕畚运于渤海之尾 技术人员:子孙荷担者三夫 工程管理人员:愚公 外协:邻人京城氏之孀妻,有遗男,始龀,跳往助之 这已经描述了"愚公移山"工程概况.体现了编程人员基本素质.在与"智叟"对答中描述了实现工程的程序,必须的结构:顺序.分支. 循环

C和指针第一章 字符串处理

#include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX_COL 20 #define MAX_INPUT 1000 int read_column_numbers(int columns[], int max); void rearrange(char *output, char *input, int n_columns, int const columns[]); int main

《大道至简》第一章--编程的精意 读后感(JAVA伪代码)

1. /*愚公移山 原始需求:惩山北之塞,出入之迂: 项目沟通:聚室而谋曰: 项目目标:毕力平险,指通豫南,达于汉阴: 技术方案:扣石垦壤,箕畚运于渤海之尾: 人员构成:愚公率子孙荷担者三夫,邻人京城氏之孀妻,有遗男,始龀,跳往助之: */ public class 移山{               //定义一个移山类 String people;                 //数据成员 public static void main(String[] args)     //定义主程序