C程序scanf 的问题
来源:百度知道 编辑:UC知道 时间:2024/07/05 17:21:03
#include <stdio.h>
#include <time.h>
#define MAX_BOARDSIZE 49
unsigned int counter = 0;// 僳开函荐肺急攫
typedef struct{
int order;
int mSquare[MAX_BOARDSIZE][MAX_BOARDSIZE];
} magicSquare;
void initMagicSquare(int order,int Square[ ][MAX_BOARDSIZE]);
void printMagicSquare(int order,int Square[ ][MAX_BOARDSIZE]);
void fillMagicSquare(int order,int Square[ ][MAX_BOARDSIZE]);
int inputSquareSize();
int main(void)
{
//clock_tclock(void);
//clock_t startTime, endTime;
//double duration;
int i;
magicSquare SCAN;
// counter++;
SCAN.order = 0;
// counter++;//for狼檬扁拳何盒i=0
for(i=0; SCAN.order==0; i++){
// counter += 2; // for狼炼扒八荤, for狼i蔼盎脚
SCAN.order = inputSquareSize();
// counter ++;// =楷魂(assign楷魂)
}
initMagicSquare(SCAN.order,SCAN.mSquare);
// startTime = clock(); // 矫埃螟沥矫累
fillMagicSquare(SCAN.o
#include <time.h>
#define MAX_BOARDSIZE 49
unsigned int counter = 0;// 僳开函荐肺急攫
typedef struct{
int order;
int mSquare[MAX_BOARDSIZE][MAX_BOARDSIZE];
} magicSquare;
void initMagicSquare(int order,int Square[ ][MAX_BOARDSIZE]);
void printMagicSquare(int order,int Square[ ][MAX_BOARDSIZE]);
void fillMagicSquare(int order,int Square[ ][MAX_BOARDSIZE]);
int inputSquareSize();
int main(void)
{
//clock_tclock(void);
//clock_t startTime, endTime;
//double duration;
int i;
magicSquare SCAN;
// counter++;
SCAN.order = 0;
// counter++;//for狼檬扁拳何盒i=0
for(i=0; SCAN.order==0; i++){
// counter += 2; // for狼炼扒八荤, for狼i蔼盎脚
SCAN.order = inputSquareSize();
// counter ++;// =楷魂(assign楷魂)
}
initMagicSquare(SCAN.order,SCAN.mSquare);
// startTime = clock(); // 矫埃螟沥矫累
fillMagicSquare(SCAN.o
for loop就是for循环,中英结合弄你糊涂了吧。
要达到你说的不用scanf而用for loop把从3到11的奇数魔法方块,程序这样改造:
修改int main(void)为下面一行:
int main2(int square_size)
修改SCAN.order = inputSquareSize(); 为下面一行:
SCAN.order = square_size;
然后新编写下面的主函数:
void main(void){
int i;
for (i=3;i<=11;i+=2) main2(i);
}