|
本帖最后由 jemappellevo172 于 2020-9-25 20:25 编辑
啥都输出不出来是咋回事
#include"stdio.h"
#include"stdafx.h"
int main()
{
char c[9]={'f','s','q','f','g','a','l','t','h'};
int num[9]={0};
int idx=0;
int cb=0;
int judge=0;
int i=0;
for(;idx<9;idx++)
{
num[idx]=(int)c[idx];
}
for(;judge=0;)
{
for(idx=0;idx<8;idx++)
{
if(num[idx]>num[idx+1])
{ cb=num[idx];
num[idx]=num[idx+1];
num[idx+1]=cb;
}
}
for(idx=0;idx<8;idx++)
{
if(num[idx]<num[idx+1])
{
i+=1;
}
}
if(i>=8)
{
judge=1;
i=0;
}
else
{
i=0;
}
}
for(idx=0;idx<9;idx++)
{
c[idx]=(char)num[idx];
}
for(idx=0;idx<3;idx++)
{
for(int idx2;idx2<3;idx2++)
{
printf("%c ",c[idx*3+idx2]);
}
printf("\n");
}
return 0;
}
本帖最后由 leomia 于 2020-9-30 15:20 编辑
//这段程序编译时会有一个警告"使用了未初始化的局部变量“idx2”"
//for循环索引idx2没有初始值
- #include"stdio.h"
- #include"stdafx.h"
- int main()
- {
- char c[9]={'f','s','q','f','g','a','l','t','h'};
- int num[9]={0};
- int idx=0;
- int cb=0;
- int judge=0;
- int i=0;
- for(;idx<9;idx++)
- {
- num[idx]=(int)c[idx];
- }
- for(;judge=0;)
- //******代码未执行部分[开始]******
- {
- for(idx=0;idx<8;idx++)
- {
- if(num[idx]>num[idx+1])
- { cb=num[idx];
- num[idx]=num[idx+1];
- num[idx+1]=cb;
- }
- }
- for(idx=0;idx<8;idx++)
- {
- if(num[idx]<num[idx+1])
- {
- i+=1;
- }
- }
- if(i>=8)
- {
- judge=1;
- i=0;
- }
- else
- {
- i=0;
- }
- }
- //******代码未执行部分[结束]******
- for(idx=0;idx<9;idx++)
- {
- c[idx]=(char)num[idx];
- }
- for(idx=0;idx<3;idx++)
- {
- //***for循环索引idx2没有初始值**
- //原 for(int idx2;idx2<3;idx2++)
- /*修改为*/for(int idx2 = 0;idx2<3;idx2++)
- {
- printf("%c ",c[idx*3+idx2]);
- }
- printf("\n");
- }
- return 0;
- }
复制代码
//修改后的代码能跑起来,有输出,就是不知道是完成什么功能的
|
-
上一篇: QT!单例模式下再次激活怎么让之前的程序弹出下一篇: C++新手求助
|