1. 程式人生 > 實用技巧 >pdf轉png圖片

pdf轉png圖片

一、

不可以。一元二次方程的根有兩個,而每個函式只有一個返回值,函式不能有兩個返回值,所以不能。

二、

原始碼

//利用區域性static變數計算階乘

#include<stdio.h>
long long fac(int n);  //函式宣告

int main()
{
    int i,n;
    
    printf("Enter n:\n");
    scanf("%d",&n);
    
    for(i=1;i<=n;++i)
       printf("%d! = %11d\n",i,fac(i));
       return 0; 
 } 
 
 
//函式定義 long long fac(int n) { static long long p=1; p=p*n; return p; }

加入一行後

理論分析p1=8,p2=17

因為再次進入函式時用上次結果執行,且退出時變數始終存在,不能被佔有。

實際與理論一致

#include<stdio.h>

#define N 1000
int fun(int n,int m,int bb[N])  //函式定義 
{
    int i,j,k=0,flag;
    
    for(j=n;j<=m;j++)
       {
           flag
=1; for(i=2;i<j;i++) if(j%i==0) { flag=0; break; } if(flag==1) bb[k++]=j; } return k; } int main() { int n=0,m=0,i,k,bb[N]; scanf("%d",&n); scanf("%d",&m);
for(i=0;i<m-n;i++) bb[i]=0; k=fun(n,m,bb); for(i=0;i<k;i++) printf("%4d",bb[i]); return 0; }

# include<stdio.h>
long long fun(int n);

int main(){
    int n;
    long long f;
    
    while(scanf("%d",&n)!=EOF){
        f = fun(n);
        printf("n = %d,f = %1ld\n",n,f);
    }
    return 0;
}
long long fun(int n){
    long long x;
    if(n==0)
    x=1;
    else
    x=2*(fun(n-1)+1);
    x=x-1;
    return x;     
}

#include <stdio.h>

void draw(int n, char symbol);  // 函式宣告 

#include <stdio.h> 
int main() {
    int n, symbol;
    
    while(scanf("%d %c", &n, &symbol) != EOF) {
        draw(n, symbol);  // 函式呼叫 
        
        printf("\n");
    }
    
    return 0;
} 


// 函式定義
void draw(int n, char symbol)
{
     int line,col;
    for(line=1;line<=n;line++)
     {
       for(col=1;col<=n-line;col++)
          printf("%c",' ');
       for(int j=1;j<=line*2-1;j++)
          printf("%c",symbol);
          printf("\n");
     }
}