วันเสาร์ที่ 30 กันยายน พ.ศ. 2560

ภาษาซีเบื้องต้น ตอนที่ 6 : โจทย์เพื่อความเข้าใจ printf scanf

ให้แสดงผลลัพธ์ของโปรแกรม (output) หรือ เขียนโปรแกรมตามที่โจทย์ต้องการ 
ให้ลองคิดดูก่อน อย่าเลื่อนไปดูเฉลยล่างสุด - -*


#Program 1

#include<stdio.h>
#include<conio.h>
main()
{
     printf(“Hello Word”);
     getch();
}


#Program 2 ให้เขียนโปรแกรมแสดงชื่อออกมาทางหน้าจอ โดยในชื่อกับนามสกุลอยู่คนละบรรทัด

#Program 3

#include<stdio.h>
#include<conio.h>
main()
{
     printf(“ABCD”);
     printf(“1234”);
     printf(“Hello”);
     getch();
}


#Program 4

#include<stdio.h>
#include<conio.h>
main()
{
     printf(“ABCD\n”);
     printf(“1234\n”);
     printf(“Hello\n”);
     getch();
}


#Program 5

#include<stdio.h>
#include<conio.h>
main()
{  
     printf(“ABCD\n1234\nHello\n”);
     getch();  
}


#Program 6

#include<stdio.h>
#include<conio.h>
main()
{
     printf(“Name:  %s\n”,”Test”);
     printf(“number:  %d\n”,4);
     getch();
}


#Program 7

#include<stdio.h>
#include<conio.h>
main()
{
     int  number=7; float  GPA=3.5;  char grade= ‘A’;
     printf(“%d\n”,number);
     printf(“%.2f\n”,GPA);
     printf(“%s\n”,&grade);
     getch();
}


#Program 8

#include<stdio.h>
#include<conio.h>
main()
{
     int  number;
     scanf(“%d”,&number);
     getch();
}


#Program 9

#include<stdio.h>
#include<conio.h>
main()
{
     int  number;
     printf(“Enter number (1-100):  ”);
     scanf(“%d”,&number);
     printf(“you input number :  %d”,number);
     getch();
}


#Program 10

#include<stdio.h>
#include<conio.h>
main()
{
     int  score1, score2;
     printf(“Enter  score1:  ”);
     scanf(“%d”,&score1);
     printf(“Enter  score2: ”);
     scanf(“%d”,&score2);
     printf(“Total score: %d”,score1+score2);
     getch();
}


#Program 11

#include<stdio.h>
#include<conio.h>
main()
{
     int  score1, score2;
     printf(“Enter  score1 , score2:  ”);
     scanf(“%d %d”,&score1,&score2);
     printf(“Total score: %d”,score1+score2);
     getch();
}


#Program 12

#include<stdio.h>
#include<conio.h>
main()
{
     int  num;
     num=10;
     printf(“num = %d\n”,num);
     printf(“num++ = %d\n”,num++);
     printf(“num = %d\n\n”,num);

     num=10;
     printf(“num = %d\n”,num);
     printf(“++num = %d\n”,++num);
     printf(“num = %d\n\n”,num);
     getch();
}


------------------------------   เฉลย  --------------------------------
#Program 1
Hello Word

#Program 2
#include<stdio.h>
#include<conio.h>
main()
{
     printf(“ชื่อ\nนามสกุล”);   // ชื่อนามสกุลให้ใส่ชื่อเราเองเป็นภาษาอังกฤษ มี \n ด้วย
     getch();
}

#Program 3
ABCD1234Hello

#Program 4
ABCD
1234
Hello

#Program 5   
ABCD
1234
Hello

// ข้อ4 ข้อ 5 ผลลัพท์เหมือนกัน แต่จำนวนบรรทัดของโปรแกรมต่างกัน

#Program 6
Name:  Test
number:  4

#Program 7
7    
3.50   

#Program 8
10

//หากพิมพ์อะไรไป มันจะแสดงแค่ผลลัพท์อันนั้นที่พิมพ์ เช่น 10

#Program 9

Enter number (1-100): 70
you input number : 70

//หากพิมพ์อะไรไปมันจะเอาค่านั้นเก็บไว้ในตัวแปร แล้ว printf มันจะแสดงอีกครั้ง

#Program 10
Enter  score1: 10
Enter  score2: 20
Total score: 30

#Program 11
Enter  score1 , score2: 10 20 
Total score: 30

//ข้อ 10 กับ ข้อ 11 เป็นโปรแกรมบวกเลข2จำนวนเหมือนกัน แต่ต่างกันที่การรับข้อมูล (scanf)
//ข้อ 10 รับทีละค่า ข้อ 11 รับทีเดียว 2 ค่าในบรรทัดเดียวโดยต้องเว้นวรรค  
//หากไม่เว้นวรรคพิมพ์ 10 แล้ว Enter โปรแกรมก็ยังไม่แสดงผลต้องพิมพ์อีกจำนวน


#Program 12
num = 10
num++ = 10
num = 11

num = 10 
++num = 11
num = 11

//ข้อนี้แสดงให้เห็นความแตกต่างของเครื่องหมาย ++ ที่อยู่หน้าและหลังตัวแปร
//หากอยู่หลังตัวแปรค่าจะเปลี่ยนหลังจากเรียกตัวแปรนั้นอีกครั้ง 
//หากอยู่หน้าตัวแปรค่าจะเปลี่ยนทันทีในรอบนั้น
//จะเจอช่วง คำสั่ง while do-while for
//เครื่องหมาย ++ หน้าหรือหลังตัวแปรอยู่ในเรื่องนิพจน์และการดำเนินการ 





ไม่มีความคิดเห็น:

แสดงความคิดเห็น