公告:本站提供编程开发方面的技术交流与分享,打造最佳教程网,希望能为您排忧解难!

C语言教程C语言函数: P

C语言函数: P

更新时间:2013-03-25 13:56:34 |

函数名: parsfnm
功  能: 分析文件名
用  法: char *parsfnm (char *cmdline, struct fcb *fcbptr, int option);
程序例:

#include <process.h>
#include <string.h>
#include <stdio.h>
#include <dos.h>

int main(void)
{
   char line[80];
   struct fcb blk;

   /* get file name */
   printf("Enter drive and file name (no path - ie. a:file.dat)\n");
   gets(line);

   /* put file name in fcb */
   if (parsfnm(line, &blk, 1) == NULL)
      printf("Error in parsfm call\n");
   else
      printf("Drive #%d  Name: %11s\n", blk.fcb_drive, blk.fcb_name);

   return 0;
}
 
 

函数名: peek
功  能: 检查存储单元
用  法: int peek(int segment, unsigned offset);
程序例:

#include <stdio.h>
#include <conio.h>
#include <dos.h>

int main(void)
{
   int value = 0;

   printf("The current status of your keyboard is:\n");
   value = peek(0x0040, 0x0017);
   if (value & 1)
      printf("Right shift on\n");
   else
      printf("Right shift off\n");

   if (value & 2)
      printf("Left shift on\n");
   else
      printf("Left shift off\n");

   if (value & 4)
      printf("Control key on\n");
   else
      printf("Control key off\n");

   if (value & 8)
      printf("Alt key on\n");
   else
      printf("Alt key off\n");

   if (value & 16)
      printf("Scroll lock on\n");
   else
      printf("Scroll lock off\n");

   if (value & 32)
      printf("Num lock on\n");
   else
      printf("Num lock off\n");

   if (value & 64)
      printf("Caps lock on\n");
   else
      printf("Caps lock off\n");

   return 0;
}
 
 

函数名: peekb
功  能: 检查存储单元
用  法: char peekb (int segment, unsigned offset);
程序例:

#include <stdio.h>
#include <conio.h>
#include <dos.h>

int main(void)
{
   int value = 0;

   printf("The current status of your keyboard is:\n");
   value = peekb(0x0040, 0x0017);
   if (value & 1)
      printf("Right shift on\n");
   else
      printf("Right shift off\n");

   if (value & 2)
      printf("Left shift on\n");
   else
      printf("Left shift off\n");

   if (value & 4)
      printf("Control key on\n");
   else
      printf("Control key off\n");

   if (value & 8)
      printf("Alt key on\n");
   else
      printf("Alt key off\n");

   if (value & 16)
      printf("Scroll lock on\n");
   else
      printf("Scroll lock off\n");

   if (value & 32)
      printf("Num lock on\n");
   else
      printf("Num lock off\n");

   if (value & 64)
      printf("Caps lock on\n");
   else
      printf("Caps lock off\n");

   return 0;
}
 
 

函数名: perror
功  能: 系统错误信息
用  法: void perror(char *string);
程序例:

#include <stdio.h>

int main(void)
{
   FILE *fp;

   fp = fopen("perror.dat", "r");
   if (!fp)
      perror("Unable to open file for reading");
   return 0;
}
 
 

函数名: pieslice
功  能: 绘制并填充一个扇形
用  法: void far pieslice(int x, int stanle, int endangle, int radius);
程序例:

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

int main(void)
{
   /* request auto detection */
   int gdriver = DETECT, gmode, errorcode;
   int midx, midy;
   int stangle = 45, endangle = 135, radius = 100;

   /* initialize graphics and local variables */
   initgraph(&gdriver, &gmode, "");

   /* read result of initialization */
   errorcode = graphresult();
   if (errorcode != grOk)  /* an error occurred */
   {
      printf("Graphics error: %s\n", grapherrormsg(errorcode));
      printf("Press any key to halt:");
      getch();
      exit(1); /* terminate with an error code */
   }

   midx = getmaxx() / 2;
   midy = getmaxy() / 2;

   /* set fill style and draw a pie slice */
   setfillstyle(EMPTY_FILL, getmaxcolor());
   pieslice(midx, midy, stangle, endangle, radius);

   /* clean up */
   getch();
   closegraph();
   return 0;
}
 
 

函数名: poke
功  能: 存值到一个给定存储单元
用  法: void poke(int segment, int offset, int value);
程序例:

#include <dos.h>
#include <conio.h>

int main(void)
{
   clrscr();
   cprintf("Make sure the scroll lock key is off and press any key\r\n");
   getch();
   poke(0x0000,0x0417,16);
   cprintf("The scroll lock is now on\r\n");
   return 0;
}
 
 

函数名: pokeb
功  能: 存值到一个给定存储单元
用  法: void pokeb(int segment, int offset, char value);
程序例:

#include <dos.h>
#include <conio.h>

int main(void)
{
   clrscr();
   cprintf("Make sure the scroll lock key is off and press any key\r\n");
   getch();
   pokeb(0x0000,0x0417,16);
   cprintf("The scroll lock is now on\r\n");
   return 0;
}
 
 

函数名: poly
功  能: 根据参数产生一个多项式
用  法: double poly(double x, int n, double c[]);
程序例:

#include <stdio.h>
#include <math.h>

/* polynomial:  x**3 - 2x**2 + 5x - 1 */

int main(void)
{
   double array[] = { -1.0, 5.0, -2.0, 1.0 };
   double result;

   result = poly(2.0, 3, array);
   printf("The polynomial: x**3 - 2.0x**2 + 5x - 1 at 2.0 is %lf\n",
           result);
   return 0;
}
 
 

函数名: pow
功  能: 指数函数(x的y次方)
用  法: double pow(double x, double y);
程序例:

#include <math.h>
#include <stdio.h>

int main(void)
{
   double x = 2.0, y = 3.0;

   printf("%lf raised to %lf is %lf\n", x, y, pow(x, y));
   return 0;
}
 

函数名: pow10
功  能: 指数函数(10的p次方)
用  法: double pow10(int p);
程序例:

#include <math.h>
#include <stdio.h>

int main(void)
{
   double p = 3.0;

   printf("Ten raised to %lf is %lf\n", p, pow10(p));
   return 0;
}
 
 

函数名: printf
功  能: 产生格式化输出的函数
用  法: int printf(char *format...);
程序例:

#include <stdio.h>
#include <string.h>

#define I 555
#define R 5.5

int main(void)
{
   int i,j,k,l;
   char buf[7];
   char *prefix = buf;
   char tp[20];
   printf("prefix  6d      6o      8x        10.2e        "
          "10.2f\n");
   strcpy(prefix,"%");
   for (i = 0; i < 2; i++)
   {
      for (j = 0; j < 2; j++)
         for (k = 0; k < 2; k++)
     for (l = 0; l < 2; l++)
            {
               if (i==0)  strcat(prefix,"-");
               if (j==0)  strcat(prefix,"+");
               if (k==0)  strcat(prefix,"#");
               if (l==0)  strcat(prefix,"0");
               printf("%5s |",prefix);
               strcpy(tp,prefix);
               strcat(tp,"6d |");
               printf(tp,I);
               strcpy(tp,"");
               strcpy(tp,prefix);
               strcat(tp,"6o |");
               printf(tp,I);
               strcpy(tp,"");
               strcpy(tp,prefix);
               strcat(tp,"8x |");
               printf(tp,I);
               strcpy(tp,"");
               strcpy(tp,prefix);
        strcat(tp,"10.2e |");
        printf(tp,R);
        strcpy(tp,prefix);
        strcat(tp,"10.2f |");
        printf(tp,R);
        printf("  \n");
        strcpy(prefix,"%");
     }
       }
   return 0;
}

最佳教程网

最大的技术交流平台 www.goodxyx.com© CopyRight 2011-2013, All Rights Reserved

浙ICP备11033019号