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;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章