zoukankan      html  css  js  c++  java
  • 第五周作业

    7-1 统计一行文本的单词个数

    本题目要求编写程序统计一行字符中单词的个数。所谓“单词”是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个。

    输入格式:
    输入给出一行字符。

    输出格式:
    在一行中输出单词个数。
    输入样例:

    Let's go to room 209.
    

    输出样例:

    5
    

    流程图:

    代码:

    #include<stdio.h>
    int main()
    {
    	int i=0,word=0,num=0;
    	char str[1000];
    	gets(str);
        for(i=0;str[i]!='';i++)
    	if(str[i]==' '){
    		word=0;
    	}
    	else if(word==0){
    		word=1;
    		num++;
    	}
    	printf("%d",num);
    	return 0;
    }
    

    错误:

    错因:
    没有找到使数组判断到。
    正确:

    7-1 英文单词排序

    本题要求编写程序,输入若干英文单词,对这些单词按长度从小到大排序后输出。如果长度相同,按照输入的顺序不变。

    输入格式:
    输入为若干英文单词,每行一个,以#作为输入结束标志。其中英文单词总数不超过20个,英文单词为长度小于10的仅由小写英文字母组成的字符串。

    输出格式:
    输出为排序后的结果,每个单词后面都额外输出一个空格。

    输入样例:

    blue
    red
    yellow
    green
    purple
    #
    

    输出样例:

    red blue green yellow purple 
    

    根据要求进行更改

    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>
    int main()
    {
        FILE*fp;
        char str[20][10],a[20],b[10];
        int i,j,n=0;
        
        if((fp=fopen("E:\zuoye\wuguijun.txt","w+"))==NULL)
        {
            printf("File open error!
    ");
            exit(0);
        }
        while(1)
    	{
        	scanf("%s",b);
        	fscanf(fp,"%s",b);
        	if(b[0]=='&')    //学号尾数1  1+37=38  38=& 
    	    {
        		break;
        	}
            else
    		{
            strcpy(str[n],b);
            n++;
            }
        }
        for(i=0;i<n-1;i++)
        	for(j=0;j<n-i-1;j++)
    	    {
                if(strlen(str[j])>strlen(str[j+1]))
    		    {
                   strcpy(a,str[j]);
                   strcpy(str[j],str[j+1]);
                   strcpy(str[j+1],a);
                }
            }
            
        for(i=0;i<n;i++)
    	{
            printf("%s ",str[i]);
            fprintf(fp,"%s ",str[i]);
        }
        
        if(fclose(fp)){
            printf("Can not close the file! 
    ");
            exit(0);
        }
        return 0;
    }
    
    编程总结
    

    英语排序题较难,并且要观看他人代码和结对编程的同学一起查阅资料一起来完成。

    结对编程感想
    

    可以在遇到难问题时一起解决。

  • 相关阅读:
    NOIP201208同余方程
    NOIP模拟赛 最佳组合
    NOIP模拟赛 拓展
    CF1253E Antenna Coverage(DP)
    LOJ6033「雅礼集训 2017 Day2」棋盘游戏 (博弈论,二分图,匈牙利算法)
    CF582E Boolean Function(DP,状态压缩,FMT)
    CF750G New Year and Binary Tree Paths(DP)
    Codeforces Round 596 题解
    AGC008E Next or Nextnext(组合计数,神奇思路)
    ARC082E ConvexScore(神奇思路)
  • 原文地址:https://www.cnblogs.com/wuguijunniubi/p/10621295.html
Copyright © 2011-2022 走看看