请高手用C语言帮忙做个编程的题目,谢谢了!
大体思路:
将要统计的词汇存入字符串数组中;
对于文本文件,一行一行进行读取;对每一行利用split函数根据空格进行分割,分割后的结果存于字符串数组中,对改行进行词汇统计(两层for循环);
注:一个单词遇到行末分开写需要加判断。(若行末和下一行的开头没有空格,将其连起来进行判断,是否为所要统计的词汇)。
望有帮助!
/*第一题:从键盘输入任意两个正整数x和y,编程求出两数的最大公因子和最小公倍数
*/
#include
int main(void)
{
unsigned int x,y,i,a,b;
printf("请输入两个正整数x和y:");
scanf("%d %d", &x,&y);
if (x < 2 || y < 2) {
printf("无效的输入
");
return 0;
}
a = 0; b = 0;
for(i = 2; i <= x * y; i++) {
if(a == 0 && x % i == 0 && y % i == 0) a = i;
if(i % x == 0 && i % y == 0) { b = i; break; }
}
if(a == 0)
printf("%d 和 %d 没有公因子。最小公倍数是 %d。
", x, y, b);
else
printf("%d 和 %d 的最大公因子是%d,最小公倍数是 %d。
", x, y, a, b);
return 1;
}
/*第二题 10个数,用起泡法对十个数排序(有小到大)
*/
#include
int main(void)
{
int i,j,k;
int a[]={3,9,7,5,4,1,6,2,0,8};
for( j = 0 ; j < 10 ; j++ ) {
for ( i=0; i < 10-j; i++)
if (a[i]>a[i+1]) {
k=a[i];
a[i]=a[i+1];
a[i+1]=k;
}
}
for(i = 0; i < 10 ; i++)
printf("%d ",a[i] );
printf("
");
return 0;
}
/*第三题
输入一行字符、统计其中分别有多少个单词和空格
*/
#include
int main(void)
{
char line[80];
int a = 0, b = 0, word = 0;
char * s = line;
gets(line);
while(*s) {
if((*s >= 'a' && *s = 'A' && *s <= 'Z')) {
if(word == 0) {
word = 1;
a ++;
}
s ++;
continue;
}
if(*s == ' ' || *s == '' ) {
if(word) word = 0;
b++;
}
s++;
}
printf("%d words and %d spaces
", a, b);
return 0;
}
int IsDevided(int number,int dev)
{
if(number %dev == 0)
{
return 1;
}
return 0;
}
void EasyDone(int a)
{
int chose;
int i,j;
printf("Input your chose\n1>能被3整除的"<Enter 1>",
"\n2>能被5整除的<Enter 2>",
"\n3>能被3或5整除的<Enter 3>\n");
scanf("%d",&chose);
switch(chose)
{
case 1:
for(i = 0; i< 500; i++)
{
if(IsDevided(i,3)&&IsDevided(i,5)&&IsDevided(i,7))
{
printf("%d",i);
}
}
printf("\n");
break;
case 2:
for(i = 0; i < 500; i++)
{
if(IsDevided(i,3))
{
printf("%d",i);
}
}
printf("\n");
break;
case 3:
for(i = 0; i< 500; i++)
{
if(IsDevided(i,5))
{
printf("%d",i);
}
}
printf("%d",i);
break;
case 4:
for(i = 0; i < 500 ; i++)
{
if(IsDevided(i,3)||IsDevided(i,5))
{
printf("%d",i);
}
}
printf("%d",i);
break;
default:
printf("输入数据的正确检查还没有处理\n");
break;
}
}
int main()
{
int a;
printf("input a number:\n");
scanf("%d",&a);
//以上部分是你的代码
EasyDone(a);
}
稍等片刻!!
1.
main()
{
int i,j;
j=0;
for(i=1;i<=500;i++)
if((i%3==0)||(i%5==0)||(i%7==0))j++;
printf("%d",j);
}
2.
main()
{
int i,j;
j=0;
for(i=1;i<=500;i++)
if(i%3==0)printf("%d--",i);
}
2.
main()
{
int i,j;
j=0;
for(i=1;i<=500;i++)
if(i%5==0)printf("%d--",i);
}
4.
main()
{
int i,j;
j=0;
for(i=1;i<=500;i++)
if((i%3==0)||(i%5==0))printf("%d--",i);
}
(1)
#include<stdio.h>
main()
{
int i,count=0;
for(i=1;i<=500;i++)
{
if(i%3==0||i%5==0||i%7==0)
count++;
}
printf("1到500中能被3,5,7中任意一个数整除的整数的个数为%d\n",count);
}
(2)
#include<stdio.h>
main()
{
int i,count=0;
for(i=1;i<=500;i++)
{
if(i%3==0)
count++;
}
printf("1到500中能被3整除的整数的个数为%d\n",count);
}
(3)
#include<stdio.h>
main()
{
int i,count=0;
for(i=1;i<=500;i++)
{
if(i%5==0)
count++;
}
printf("1到500中能被5整除的整数的个数为%d\n",count);
}
(4)
#include<stdio.h>
main()
{
int i,count=0;
for(i=1;i<=500;i++)
{
if(i%3==0||i%5==0)
count++;
}
printf("1到500中能被3或5整除的整数的个数为%d\n",count);
}
其实不用这么麻烦的,因为一个功能函数就能完成,而你要求用四个函数完成。
#include <stdio.h>
#include <string.h>
void fun3();
void fun5();
void fun35();
void fun357();
int main()
{
fun3(), fun5(), fun35(), fun357();
}
void fun357()//计算个数
{
int i, num=0;
for(i=1; i<=500; i++)
{
if(i%3==0||i%5==0||i%7==0) num++;
}
printf("能被3,5,7中任意一个数整除的整数的个数为:%d\n", num);
}
void fun3()
{
int i, j=0;
printf("能被3整除的整数有:\n");
for(i=1; i<=500; i++)
{
if(i%3==0)
{
printf("%d ", i);
j++;
}
if(j%10==0) printf("\n");
}
printf("\n");
}
void fun5()
{
int i, j=0;
printf("能被5整除的整数有:\n");
for(i=1; i<=500; i++)
{
if(i%5==0)
{
printf("%d ", i);
j++;
}
if(j%10==0) printf("\n");
}
printf("\n");
}
void fun35()
{
int i, j=0;
printf("能被3或5整除的整数有:\n");
for(i=1; i<=500; i++)
{
if(i%3==0||i%5==0)
{
printf("%d ", i);
j++;
}
if(j%10==0) printf("\n");
}
printf("\n");
}
#include<stdio.h>
void main()
{
int i;
printf("int number 1 to 500\n");
for(i=1;i<=500;i++) //能被3或7或5整除的数
{
if(i%3==0||i%5==0||i%7==0)
printf("%d,",i);
}
}
#include<stdio.h>
void main()
{
int i;
printf("int number 1 to 500\n");
for(i=1;i<=500;i++) //能被3.整除的数
{
if(i%3==0)
printf("%d,",i);
}
}
#include<stdio.h>
void main()
{
int i;
printf("int number 1 to 500\n");
for(i=1;i<=500;i++) //能被5整除的数
{
if(i%5==0)
printf("%d,",i);
}
}
#include<stdio.h>
void main()
{
int i;
printf("int number 1 to 500\n");
for(i=1;i<=500;i++) //能被7整除的数
{
if(i%7==0)
printf("%d,",i);
}
}
相关视频
请用C语言程序编程,高手请帮忙!有重金赏!请看下面题目:
这个阶梯有119步,程序如下:main(){ int x=7;while (x%2!=1 || x%3!=2 || x%4!=3 || x%5!=4 || x%6!=5) x+=7;printf("%d\\n",x);} 程序根据7步刚好走完这一信息,从7开始测试是否满足要求,不满足就加7再测试,知道满足为止。FOR...
一个很麻烦的C语言编程,高手进来帮帮忙
#include <fstream> #include <process.h> using namespace std; typedef struct INFO { char no[11]; \/* 职工号 *\/ char name[11]; \/* 姓名 *\/ char sex[3]; \/* 性别 *\/ int age; \/* 年龄 *\/ float wages; \/* 工资 *\/ } INFO; INFO *data; string filePath = "c:\/...
求c语言高手帮助编程 多多给分
include<stdio.h> define pi 3.14159265 main(){ float r,h,c,s,t,v;printf("请输入底面圆的半径:");scanf("%f",&r);printf("请输入圆柱的高:");scanf("%f",&h);c=2*pi*r;s=pi*r*r;t=2*s+c*h;v=s*h;printf("圆的周长%.2f\\n",c);printf("圆的面积%.2f\\n",s)...
[急求助]C语言程序编程题,请高手帮忙解答下!
按照题目要求编写的程序如下(见图)
c语言编程题,请高手帮忙做一下,拜谢,急急急急……
float math,chinese,English,sum;}s[3],t;int i,j;printf("请分别输入三个学生的姓名,数学成绩,语文成绩,英语成绩");for(i=0;i<3;i++)scanf("%s%f%f%f", s[i].name, &s[i].math, &s[i].chinese, &s[i].English);for(i=0;i<3;i++)s[i].sum=s[i].math+s[i]....
帮忙编一个程序 C语言 谢了哈
printf("请输入字符串\\n");do { scanf("%c", &a[i]);} while (a[i++] != '\\n');printf("请输入字符\\n");scanf("%c", &ch);for (i = 0, j = 0; a[i] != '\\0'; i++){ if (a[i] == ch) continue;b[j++] = a[i];} printf("转换后的字符串%s\\n", ...