구구단을 출력하는데 입력받은 단은 제외하는 프로그램
/******************************************************************************
Welcome to GDB Online.
GDB online is an online compiler and debugger tool for C, C++, Python, Java, PHP, Ruby, Perl,
C#, VB, Swift, Pascal, Fortran, Haskell, Objective-C, Assembly, HTML, CSS, JS, SQLite, Prolog.
Code, Compile, Run and Debug online from anywhere in world.
*******************************************************************************/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
char name[100];
int aaa[10], k=0;
int line,num,z,check;
printf("구구단에서 제외할 단을 선택하시오 : ");
fgets(name, 100, stdin);
// printf("%s",name);
char* token;
token = strtok(name, " ");
while(token != NULL){
aaa[k] =atoi(token);
// printf("%d %s\n",aaa[k],token);
if(aaa[k]>=2 && aaa[k]<=9){
k++;
}
token = strtok(NULL, " ");
}
for(num=1;num<=9;num++){
for(line=2; line<=9; line++){
check = 1;
for(z=0; z<k; z++)
if(line == aaa[z])
check = 0;
if(check==1)
printf("%d * %d = %2d ", line , num , line*num);
}
printf("\n");
}
return 0;
}
Visual Studio - strtok_s 사용
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
char name[100];
int aaa[10];
int k=0, line, num, z, check;
char* delimeter = " ";
char* token, *context=NULL;
printf("구구단에서 제외할 단을 선택하시오 : ");
fgets(name, 100, stdin);
//printf("%s",name);
token = strtok_s(name, delimeter, &context);
while (token != NULL) {
aaa[k] = atoi(token);
//printf("%d %s\n", aaa[k], token);
if (aaa[k] >= 2 && aaa[k] <= 9) {
k++;
}
token = strtok_s(NULL, delimeter, &context);
}
for (num = 1; num <= 9; num++) {
for (line = 2; line <= 9; line++) {
check = 1;
for (z = 0; z < k; z++)
if (line == aaa[z])
check = 0;
if (check == 1)
printf("%d * %d = %2d ", line, num, line * num);
}
printf("\n");
}
return 0;
}
'PROGRAM > C' 카테고리의 다른 글
이름 입력받아 테두리에 별 찍기 (0) | 2023.04.03 |
---|---|
10진수를 2진수 16진수로 출력하기 (0) | 2021.08.17 |