求教C++问题
#include "stdio.h"
#include "string.h"
void main()
{
char tongji(char s[1024]);
char s[1024];
int k,j,a,b;
printf("请输入一个字符串\n");
gets(s);
printf("该字符串中字母的个数为%d个",k);
printf("该字符串中数字的个数为%d个",j);
printf("该字符串中空格的个数为%d个",a);
printf("该字符串中其他字符的个数为%d个",b);
}
char tongji(char s[1024])
{
int i,k,j,a,b;
for(i=0;s[i]!='\0';i++)
{
if(s[i]>='a'&&s[i]<='z'||s[i]>='A'&&s[i]<='Z')
k++;
if(s[i]>='0'&&s[i]<='9')
j++;
if(s[i]==' ')
a++;
}
b=i-k-j-a;
return(k);
return(j);
return(a);
return(b);
}
5.
#include "stdio.h"
void main()
int a[10];
int i;
{
void px()
printf("please inpur 10 numbers\n");
for(i=0;i<10;i++)
scanf("%d",a[i]);
printf("它们的顺序为:");
px();
}
void px()
{
int i,j,t;
for(j=0;j<14;j++)
for(i=0;i<14-j;i++)
if(a[i]>a[i+1])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
for(i=0;i<15;i++)
printf("% d",a[i]);
printf("\n");
}
两个程序都不对,抓狂中·····第一个是统计输入字符串的字母,数字,空格个数,第二个是用冒泡排序的。希望可以指导下
追问:因为老师讲课的时候神游去了。你的冒泡欣赏不了,不过你的解释挺精彩的。
答案:#include "stdio.h"
#include "string.h"
void tongji(char s[1024]);
int k,j,a,b;
void main()
{
char s[1024];
printf("请输入一个字符串\n");
gets(s);
tongji(s);
printf("该字符串中字母的个数为%d个\n",k);
printf("该字符串中数字的个数为%d个\n",j);
printf("该字符串中空格的个数为%d个\n",a);
printf("该字符串中其他字符的个数为%d个\n",b);
}
void tongji(char s[1024])
{
int i;
k=0,j=0,a=0;
for(i=0;s[i]!='\0';i++)
{
if(s[i]>='a'&&s[i]<='z'||s[i]>='A'&&s[i]<='Z')
k++;
if(s[i]>='0'&&s[i]<='9')
j++;
if(s[i]==' ')
a++;
}
b=i-k-j-a;
printf("%d,%d,%d,%d\n",k,j,a,b);
//return(k,j,a,b); //这里只可能返回一次,其它的值不会返回
//return(j);
//return(a);
//return(b);
}
2
#include "stdio.h"
void px(int a[10]);
void main()
{
int a[10];
int i;
printf("please inpur 10 numbers\n");
for(i=0;i<10;i++)
scanf("%d",a[i]);
printf("它们的顺序为:");
px(a); //注意数组作为参数时的调用
}
void px(int a[10])
{
int i,j,t;
for(j=0;j<14;j++)
for(i=0;i<14-j;i++)
if(a[i]>a[i+1])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
for(i=0;i<15;i++)
printf("% d",a[i]);
printf("\n");
}
template<typename T>
void bubblesort(T *s,int b,int e)
{
T i,j;
T tmp;
for(i=b+1;i!=e;++i)
{
j=i;
do
{
if(s[j-1]>s[j])
{
tmp=s[j-1];
s[j-1]=s[j];
s[j]=tmp;
if(--j==b)
break;
}
else
break;
}while(true);
}
}
先给你个冒泡的~
第一个:函数只能有一个返回值。要返回那么多的话就不要调用函数。或者定义成全局变量。
#include "string.h"
int k,j,a,b;
void main()
{
第二个:px这个函数需要一个参数,按你的要求,参数应该是数组a,即 px(int a[10]); px(a);
void px(int a[10])
printf("please inpur 10 numbers\n");
for(i=0;i<10;i++)
scanf("%d",a[i]);
printf("它们的顺序为:");
px(a);
}
void px()
{
上一个:c++编程问题
下一个:C++程序编写