c++程序哪错了

来源:百度知道 编辑:UC知道 时间:2024/05/26 11:38:36
#include <stdio.h>
#include <string.h>
#include <iostream.h>
main()
{
int N;char A[100];
int k,j,n=0,i;
char B[26];
for(i=0;i<26;i++)
B[i]='A'+i;

scanf("%d",&N);
getchar();
for(N;N>0;N--)
{
gets(A);
k=strlen(A);
printf("%d",k);

for(i=0;i<26;i++)
cout<<B[i];

for(j=0;j<26;j++)
{
if(n>1) printf("%d%c",n,B[j]);
else if(n==1) printf("%c",B[j]);
n=0;
for(i=0;i<k;i++)
{if(B[j]==A[i])
n++;
}
printf("%d",n);
}

}}
为什么我的n总是零,比较以后,没有变化呢?在线等谢谢了!
#include <stdio.h>
#include <string.h>
#include <iostream.h>
main()
{
int N;char A[100];
int k,j,n=0,i;
char B[26];
for(i=0;i<26;i++)
B[i]=&#

你输入的时候用大写字母就不是0了,你初始化的是一个全大写的B[]如果输入的时候用小写字符自然总是零

C++我没学过语法不清楚。也有可能是我说错了
for(N;N>0;N--)
{
gets(A);
k=strlen(A);
printf("%d",k);

for(i=0;i<26;i++)
cout<<B[i];
你N的初始值是多少?C++区分大小写吗?如果区分N没有初始值。如果不区分,n的初始值为0,N=0;N>0;N--。这样的条件能运行?还有:
if(n>1) printf("%d%c",n,B[j]);
else if(n==1) printf("%c",B[j]);
n=0;
这样写是不是n每次都会被赋值为0?

#include <stdio.h>

#include <string.h>

#include <iostream.h>

main()

{

 int N;char A[100],C[26]={0}; 

 int k,j,i,n=0;

 char B[26];

 for(i=0;i<26;i++)

   B[i]='A'+i;

 scanf("%d",&N);

 

 for(N;N>=0;N--)

 { 

 

    gets(A);

   k=strlen(A);